In communication protocols, ARQ (automatic repeat request) is a conventional technique for detecting a frame error by a transmitter and requesting a repeat transmit if a frame has an error. There are several kinds of ARQ techniques such as stop-and-wait ARQ, go-back-n ARQ and selective repeat ARQ.
A stop and wait protocol transmits a Protocol Data Unit (PDU) of information and then waits for a response. The receiver receives each PDU and sends an Acknowledgement (ACK) PDU if a data PDU is received correctly, and a Negative Acknowledgement (NACK) PDU if the data was not received. In practice, the receiver may not be able to reliably identify whether a PDU has been received, and the transmitter will usually also need to implement a timer to recover from the condition where the receiver does not respond. Stop and Wait transmission is the simplest technique and is inadequate for high band width or high quality of service communications protocol.
A go-back-n ARQ protocol transmits numbered protocol data units of information up to the time of receiving a control PDU to indicate a missing PDU. If a sender receives the control PDU, it starts all the successive frames after the last successfully received frame. The go-back-n ARQ protocol has a problem of requiring a large buffer and a repetitive transmission of the same frames on receiving an error frame.
In a selective ARQ protocol, a sender retransmits selectively only the frame which had an error on transmission. The selective ARQ protocol has features to apply to a communication of high bandwidth or high quality of service. Wireless networks based on IEEE 802.11 , for example, have been widely used by home and businesses. New applications such as video and multimedia streaming bring a new feature of quality of service (QoS) requirements to wireless network.
The increasing demand for bandwidth or quality of service (QoS) has caused network congestion, and more users request multimedia distribution to work without stops or slowdowns. These requirements are the reason for the development of a QoS enhancement scheme for the 802.11 Wireless LAN.
The legacy 802.11 MAC always sends an acknowledgement (ACK) frame after each frame that is successfully received. Block ACK allows several data frames to be transmitted before an ACK is returned, which increases the efficiency since every frame has a significant overhead for radio synchronization. Block acknowledgements increase efficiency by aggregating the ACKs for multiple received frames into a single response. Block ACK is initiated through a setup and negotiation process between the QSTA (QoS station) and QAP (QoS access point). Once the block ACK has been established, multiple QoS Data frames can be transmitted in a contention free burst, with SIFS (short inter frame space) separation between the frames.
There are two block ACK mechanisms defined under 802.11e: immediate and delayed. When using immediate block ACK, the originator transmits multiple data frames in a contention free burst, separated by SIFS. The originator must obey the constraints of the TXOP (transmission opportunity) duration it is currently operating within. At the end of the burst, the originator transmits a block ACK Request frame. The recipient must immediately respond with a block ACK frame containing the acknowledgement status for the previous burst of data frames.
The delayed policy allows the group acknowledgement to be sent in a subsequent TXOP following the burst. The same sequence of a contention free burst and block ACK request is used as in the immediate mechanism. The recipient simply sends a standard ACK in response to the block ACK request, indicating that the block ACK will be delayed. Delayed acknowledgement increases the latency, and is provided to support lower performance implementations that are unable to immediately calculate the ACK.